package xcmg.device.dao.mapper.agentPlan;

import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import xcmg.device.dao.entity.agentPlan.AgentPlanDO;
import xcmg.device.service.vo.agentPlan.AgentPlanVO;

/**
 * @author wangyong
 */
@Mapper
public interface AgentPlanMapper {

  /**
   * 根据id获取单据
   *
   * @param id
   * @return
   */
  AgentPlanDO getById(@Param("id") String id);

  AgentPlanDO getByPlanNo(@Param("planNo") String planNo, @Param("orgId") String orgId);

  List<AgentPlanDO> listByMergeNo(@Param("mergeNo") String mergeNo, @Param("orgId") String orgId);

  /**
   * 释放已汇总的门店采购计划
   *
   * @param planNo
   * @param orgId
   * @return
   */
  Integer releaseSummaryedPlan(@Param("planNo") String planNo, @Param("orgId") String orgId);

  Integer insert(AgentPlanDO agentPlanDO);

  Integer update(AgentPlanDO agentPlanDO);

  List<AgentPlanDO> list(AgentPlanVO agentPlanVO);

  /**
   * 汇总采购计划时选择的门店采购计划列表
   *
   * @param agentPlanVO
   * @return
   */
  List<AgentPlanDO> list4Summary(AgentPlanVO agentPlanVO);


  /**
   * 汇总采购计划时选择的门店采购计划列表
   *
   * @param agentPlanVO
   * @return
   */
  List<AgentPlanDO> list4PurchaseRequest(AgentPlanVO agentPlanVO);

}
